Adaptive time slot allocation to reduce latency and power consumption in a time slotted channel hopping wireless communication network

ABSTRACT

Excessive latencies and power consumption are avoided when a large number of leaf nodes (LNs) contend simultaneously to join a time slotted channel hopping wireless communication network having a root node (RN) interfaced to LNs by one or more intermediate nodes (INs). A first plurality of shared transmit/receive slots (STRSs) is allocated for at least one IN, and a second plurality of STRSs is advertised for use by contending LNs, where the first plurality is larger than the second plurality. When a LN joins, its STRSs are re-defined such that most become shared transmit-only slots (STOSs) and no STRSs remain. The numbers of STRSs allocated to INs may vary inversely with their hop counts from the RN. One or more STOSs may be added for each of one or more INs in response to a predetermined network condition.

This application is a continuation of prior U.S. application Ser. No.16/205,368, filed Nov. 30, 2018, which is a division of prior U.S.application Ser. No. 15/053,678, filed Feb. 25, 2016, now U.S. Pat. No.10,187,285, which claims 35 USC § 119 priority to U.S. ProvisionalApplication No. 62/169,876, filed on Jun. 2, 2015, each of which isincorporated herein by reference in its entirety.

FIELD

The present work relates generally to wireless communication networksthat employ time slotted channel hopping and, more particularly, totechniques for accommodating increases in the number of nodes joiningthe network with reduced latency and power consumption.

BACKGROUND

The following documents are incorporated herein by reference:

-   -   IEEE STD 802.15.4; and    -   IEEE STD 802.15.4e.

FIG. 1 diagrammatically illustrates a simplified topology of a typicalconventional wireless communication network operating in compliance withIEEE 802.15.4e, which is an amendment to the IEEE STD 802.15.4 radiocommunication protocol specification. This amendment specificallytargets MAC protocol level modifications to enhance the performance ofdevices using IEEE 802.15.4 radios. A specific IEEE 802.15.4e MACoperation is referred to as Time Slotted Channel Hopping (TSCH), whichenables robust as well as low-power communication. Channel hoppingprovides robustness against interference. The time slotted andtime-synchronized nature of the protocol allows for time-scheduledcommunication. The scheduled communication means that the devices needto be active only when required and in “sleep” mode otherwise. Thisprovides low-power operation.

As shown, the topology of FIG. 1 has a hierarchical structure with aplurality of hierarchical levels. The network of FIG. 1 includes at 11 acentral root node (RN) that controls the network and serves as a gatewayto higher bandwidth networks. A Level 1 intermediate node (IN) at 12interfaces between the RN and a plurality of Level 2 INs at 13, whicheach in turn interfaces between the Level 1 IN 12 and one or more leafnodes (LNs) at 14. The wireless communication links illustrated betweenthe various nodes of FIG. 1 are also referred to herein as communicationhops (or simply hops), such that, for example, RN 11 is three hops awayfrom each LN at 14.

TSCH uses a sequence of time frames that are each divided into aplurality of slots of time (time slots). In the IEEE 892.15.4escheduling scheme, each node is allocated a shared slot and at least onebeacon slot in each time frame. A beacon slot is used by the RN 11 totransmit a beacon packet that contains the transmit/receive schedules ofnodes in the network. Beacon slots are also used for timesynchronization. The shared slot is a shared transit/receive slot (STRS)in which a node may either transmit or receive. New nodes attempting toassociate with (join) the network contend for access to the STRS, and asuccessfully contending node transmits a network association request inthe STRS. The STRS is the same interval of absolute time for each nodeof FIG. 1 . The STRS is also used to convey network maintenanceinformation and traffic routing information.

The RN 11 uses the STRS to transmit an association response in reply toan association request received from a successfully contending node. Asnew nodes join the network, they receive respectively correspondingassociation responses that allocate to them, in sequential fashion,respective pairs of dedicated slots. Each pair of dedicated slotsconsists of a transmit slot and a receive slot, both reserved for useonly by the node to which they are allocated. If the joining node is anIN, the association response also allocates an additional beacon slot tothe IN, to support the relay of beacon packets across the hops from theRN to the LNs.

A node operating in the network wakes up from sleep mode at every timeslot and checks what function is to be performed. If none, it returns tothe sleep state. The node listens in an active receive state during abeacon slot, an STRS and a dedicated receive slot, in order to ensurethat no communication is missed. In a dedicated transmit slot, the nodetransmits as needed, or returns to sleep if it has nothing to transmit.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings referenced herein:

FIG. 1 diagrammatically illustrates a simplified topology of aconventional wireless communication network;

FIGS. 2A and 2B illustrate operations that can be performed in a networksuch as shown in FIG. 1 according to example embodiments of the presentwork;

FIGS. 3 and 4 diagrammatically illustrate allocations of shared slotsaccording to example embodiments of the present work; and

FIG. 5 diagrammatically illustrates an apparatus for use as a root nodein a network such as shown in FIG. 1 according to example embodiments ofthe present work.

DETAILED DESCRIPTION

When many LNs attempt to join the network of FIG. 1 simultaneously, theywill all contend during the single STRS, and the INs use the STRS torelay the association requests and responses. The present work hasrecognized that these factors can disadvantageously result in highlatencies and high power consumption during association due to thecontention for the STRS, and because all nodes consume power during theSTRS. Every node awakes for the STRS, actively contends for access tothe STRS if transmission is desired, and then transmits if contention issuccessful. Also, if transmission is not desired, or if contention isnot successful, the node still listens in the active receive state. Thelatency and power consumption problems will be further exacerbated bythe aforementioned use of the STRS for communication of networkmaintenance information and traffic routing information.

The present work has also recognized that the aforementioned latency andpower consumption problems might be addressed by providing additionalSTRSs. However, simply increasing the number of STRSs wouldsignificantly increase power consumption because, as indicated above,all nodes would need to be awake in each STRS.

Example embodiments of the present work apply strategic solutions to thelatency and power consumption problems encountered as TSCH networksexperience increased demand of nodes attempting to join the network.These solutions exploit factors such as: INs (which have relativelylarge batteries or power-harvesting capabilities) are typically lesspower-constrained than LNs (which have relatively small batteries); INsat higher levels of the hierarchy experience more traffic than INs atlower levels; the operating profile of an LN changes after it becomesassociated with the network; and the post-association operating profileof the LN typically requires more uplink communication (to the RN) thandownlink communication (from the RN). As described in detail below, theRN uses messages such as beacon packets and association responses toimplement solutions according to example embodiments of the presentwork.

To alleviate the latency and power consumption problems, an RN accordingto example embodiments of the present work allocates for LN associationcontention a suitably-sized plurality of STRSs to help accommodate alarge LN association contention load. The RN transmits a beacon message(beacon packet) that advertises the number of STRSs allocated for LNs touse in contending for association. All nodes desiring networkassociation may then contend for association in each of the advertisedSTRSs.

In some embodiments, when the RN responds to a successful associationrequest, its association response (transmitted across network hops inSTRSs) re-defines the plurality of shared slots available to the newlyassociated LN, such that the shared slots comport with thepost-association operating profile of the LN and provide for reduced LNpower consumption. For example, LNs in sensor applications typically useuplink extensively for data transfer. Accordingly, some embodimentsre-define the plurality of STRSs such that: at least one STRS is changedto a shared receive-only slot (SROS) in which the LN may only receivecommunications; and the rest (a majority) of the STRSs are changed toshared transmit-only slots (STOSs) in which the LN may only transmitcommunications. A SROS always requires power consumption for listeningin the active receive state, whereas an STOS requires power consumptiononly when the node has information to transmit, in which case the nodecontends for the STOS and, if the contention is successful, transmitsthe information. Because the re-definition of the STRSs results inallocation of mostly STOSs to the LN, it comports with the LN'spost-association operating profile (mostly uplink transmissions).Because the re-definition is complete, i.e., it retains none of theSTRSs, it avoids unnecessary LN power consumption. In some embodiments,the re-definition changes only one STRS to an SROS, and changes the restof the STRSs to STOSs. In some embodiments, the re-definition adds oneor more further STOSs such that the LN is actually allocated a totalnumber of SROS(s) and STOSs that is larger than the total number ofSTRSs that were initially available to the LN for contending to join thenetwork.

Because INs also experience increased traffic as large numbers of LNsattempt to join the network, in some embodiments, the RN allocates arelatively large number of STRSs to an IN. The RN's association responseto a joining IN is used in some embodiments to communicate thisallocation of STRSs. In some embodiments, the number of STRSs allocatedto an IN exceeds the number of STRSs advertised for use by LNscontending for network association. Because a IN is typically lesspower-constrained than a LN, the added power-consumption required by therelatively large number of STRSs allocated to the INs will generally beacceptable. Furthermore, because a higher level IN (e.g., Level 1 IN ofFIG. 1 ) handles more traffic than an associated lower level IN (e.g.,Level 2 IN of FIG. 1 ), more STRSs may be allocated for a higher levelIN than for an associated lower level IN. Note that the RN knows thehierarchical level of a joining IN by inspecting the hop countconventionally provided in the association request received from the IN.The hop count is incremented at each hop traversed by the associationrequest.

As network conditions change, it may be helpful to provide one or moreINs with more network communication capacity. For example, as the numberof LNs in the network increases, one or more INs may require more uplinkcapacity to accommodate increased uplink traffic from the LNs. In someembodiments, when the RN detects that the number of LNs in the networkexceeds a predetermined threshold, it transmits a beacon message to addone or more STOSs (and/or one or more SROSs) to the shared slotallocation of each of one or more INs. Some embodiments limit the numberof STOSs/SROSs added for an IN such that its resulting total allocationof STOSs and SROSs and STRSs does not exceed the number of STRSsallocated to any associated IN at the next higher level of thehierarchical topology.

In some embodiments, the aforementioned messages (i.e., beacon messagesand association responses) used to implement solutions according to thepresent work employ payload information elements (IEs) that areconventionally available in those messages. The payload IEs are suitablyformatted to indicate the location of the shared slots, how many sharedslots are STOS, how many shared slots are SROS, and how many sharedslots are STRS. In the instances where a beacon message advertises STRSsfor association contention, the payload IE contains a predeterminedbroadcast identifier such that all potentially joining nodes areinformed. In the other above-described instances of shared slotre-definition and shared slot allocation, the payload IE (whether in abeacon message or an association request) contains information thatidentifies the node to which the payload IE is directed.

FIGS. 2A and 2B illustrate operations described above that can beperformed in a network such as shown in FIG. 1 according to exampleembodiments of the present work. The illustrated operations areperformed by the RN. When an association request is received from an INat 21 in FIG. 2A, the hop count in the request is inspected at 22. Ifthe hop count=1, then the IN is joining at Level 1 (see also FIG. 1 ),so a total of A STRSs are allocated to the IN at 23. If the hop count=2,then the IN is joining at Level 2, so a total of B (B<A) STRSs areallocated at 24.

At 25 and 26 in FIG. 2B, there is illustrated the allocation of one ormore STOSs (and/or one or more SROSs) to each of one or more INs, inresponse to detection of a predetermined condition in the network. Inthe example of FIG. 2B, the predetermined condition is the number of LNsin the network exceeding a threshold TH, as shown at 25. If thecondition at 25 is satisfied, the aforementioned allocation of one ormore STOSs (and/or one or more SROSs) to each of one or more INs occursas shown at 26.

At 27 in FIG. 2B, there is illustrated advertisement of C (C<B) STRSsfor LNs to use in contending for network association. If a LNassociation request is received at 28, the C STRSs advertised at 27 arechanged for the new LN at 29, to become D SROS(s) and E STOSs, whereD+E=C and D<E. As noted above, the re-definition at 29 may also includeaddition of one or more further STOSs (not explicitly shown in FIG. 2B).After the re-definition at 29, operations may proceed to check for thenetwork condition at 25, unless that condition was already detectedpreviously, in which case operations proceed to 27 as shown by brokenline in FIG. 2B.

In some embodiments, the value of threshold TH is updated (increased) inresponse to a “yes” decision at 25 in FIG. 2B, thus providing for thepossible allocation of further STOSs/SROSs (at 26) as the network grows.In such case, the broken line path from 29 to 27 in FIG. 2B would beomitted.

FIGS. 3 and 4 show bar graphs that illustrate example allocations ofshared slots to a Level I IN, a Level 2 IN and a LN according to exampleembodiments of the present work. FIG. 3 shows allocations existingbefore the LN has joined the network, and FIG. 4 shows allocations afterthe LN joins. FIG. 3 shows A, B and C STRSs allocated for use by theLevel I IN, the Level 2 IN and the LN, respectively, with A>B>C. FIG. 4shows post-association shared slot re-definition for the LN such thatthe STRSs previously allocated to the LN (see FIG. 3 ) for associationcontention are changed to D SROS(s) and E STOSs, with D<E and D+E=C.FIG. 4 also shows, in broken line, F STOSs added to the shared slotallocation of an IN (Level 2 IN in this example) in response todetection of a predetermined condition in the network. As one particularillustrative example, some embodiments have A=10, B=6, C=4, D=1, E=3 andF=4. As another particular example, the LN's shared slot re-definitionin some embodiments (not shown in FIG. 4 ) adds two further STOSs forthe LN, resulting in a total of E+2 (e.g., 3+2=5) STOSs and C+2 totalshared slots for the LN, with C+2<B<A.

FIG. 5 diagrammatically illustrates an apparatus for use as a RN in aTSCH wireless communication network such as shown in FIG. 1 according toexample embodiments of the present work. Various conventional structuresand functions not necessary for understanding the present work may beomitted. The apparatus of FIG. 5 is capable of performing operationsdescribed above and shown in FIGS. 2-4 . A slot allocator 51 is coupledfor communication with a node association interface 53 and a beacongenerator 55. In some embodiments, the slot allocator 51, the nodeassociation interface 53 and the beacon generator 55 are collectivelyimplemented by a suitably programmed data processor. As indicateddiagrammatically by the broken line at 57, the node associationinterface 53 receives incoming association requests from nodes that areassociating with the network, and outputs corresponding associationresponses for transmission through the network to the associating nodes.In some embodiments, the node association interface 53 uses conventionaltechniques to analyze each incoming association request, and thenforwards to the slot allocator 51 pertinent information from theassociation request. For example, in some embodiments, the nodeassociation interface 53 forwards to the slot allocator 51 informationsuch as the type of node (LN or IN) that sent the incoming associationrequest, and the hop count contained in the association request. Theslot allocator 51 determines the shared slot allocation for theassociating node based on the association request information receivedfrom the node association interface 53, and forwards the determinedshared slot allocation to the node association interface 53. The nodeassociation interface 53 prepares for the associating node anassociation response that contains the determined shared slotallocation, and then outputs the association response at 57 fortransmission through the network to the associating node.

The beacon generator 55 receives shared slot allocation information fromthe slot allocator 51, prepares a beacon message that contains thereceived shared slot allocation information, and outputs the beaconmessage at 59 for transmission through the network. As described above,beacon messages are used to advertise STRSs allocated by the slotallocator 51 for use by nodes contending to associate with the network.As also described above, beacon messages are used to inform INs thatSTOSs and/or SROSs (allocated by slot allocator 51) are added to theirshared slot allocations. In some embodiments, the slot allocator 51maintains a count of the number of LNs in the network, and compares thiscount with a threshold to determine when to add STOSs/SROSs to theshared slot allocations of INs (see also 25 and 26 in FIG. 2 ).

Although example embodiments of the present work are described above indetail, this does not limit the scope of the present work, which may bepracticed in a variety of embodiments.

What is claimed is:
 1. A method comprising: receiving, by a first nodeof a network, an association request from a second node; based on theassociation request, determining a hop count between the first node andthe second node; and allocating a number of shared slots to the secondnode that is based on the hop count between the first node and thesecond node.
 2. The method of claim 1, wherein the number of sharedslots allocated is inversely proportional to the hop count.
 3. Themethod of claim 1, wherein the first node is a root node of the networkand the second node is an intermediate node.
 4. The method of claim 1,wherein the shared slots are transmit/receive slots.
 5. The method ofclaim 1, wherein: the association request is a first associationrequest; the shared slots are a first set of shared slots; and themethod further comprises, based on a number of leaf nodes associatedwith the network, allocating a second set of shared slots to the secondnode.
 6. The method of claim 5, wherein the first set of shared slotsare transmit/receive slots and the second set of shared slots includes atransmit-only slot.
 7. The method of claim 6, wherein the second set ofshared slots includes a receive-only slot.
 8. The method of claim 5,wherein: the allocating of the second set of shared slots to the secondnode is based on the number of leaf nodes exceeding a threshold; and themethod further comprises increasing the threshold based on the number ofleaf nodes exceeding the threshold.
 9. A method comprising: receiving,by a root node of a network, an association request from an intermediatenode; based on the association request, allocating a first set of timeslots to the intermediate node; and based on a number of leaf nodesassociated with the network, allocating a second set of time slots tothe intermediate node.
 10. The method of claim 9, wherein a count of thefirst set of time slots is based on a hop count between the root nodeand the intermediate node.
 11. The method of claim 10, wherein the countof the first set of time slots is inversely proportional to the hopcount.
 12. The method of claim 9, wherein the first set of time slotsare transmit/receive slots and the second set of time slots includes atransmit-only slot.
 13. The method of claim 12, wherein the second setof time slots further includes a receive-only slot.
 14. The method ofclaim 12, wherein: the allocating of the second set of time slots to theintermediate node is based on the number of leaf nodes exceeding athreshold; and the method further comprises increasing the thresholdbased on the number of leaf nodes exceeding the threshold.
 15. A networknode comprising: a node association interface configured to: couple to anetwork receive an association request from an intermediate node via thenetwork; and provide a hop count for the intermediate node; a slotallocator coupled to the node association interface and configured toallocate a number of shared transmit/receive slots (STRSs) to theintermediate node that is based on the hop count; and a beacon generatorcoupled to the slot allocator and configured to cause the nodeassociation interface to provide a beacon over the network thatindicates the STRSs allocated to the intermediate node.
 16. The networknode of claim 15, wherein the number of shared slots allocated isinversely proportional to the hop count.
 17. The network node of claim15, wherein the slot allocator is further configured to allocate a setof shared transmit-only slots (STOSs) to the intermediate node based ona number of leaf nodes.
 18. The network node of claim 17, wherein: thebeacon is a first beacon; and the beacon generator is further configuredto cause the node association interface to provide a second beacon overthe network that indicates the set of STOSs allocated to theintermediate node.
 19. The network node of claim 15, wherein the slotallocator is further configured to allocate a set of shared receive-onlyslots (SROSs) to the intermediate node based on a number of leaf nodes.20. The network node of claim 15, wherein the network node is configuredto operate as a root node.